Conversation
This comment has been minimized.
This comment has been minimized.
cb9b84c to
cd83e12
Compare
|
Initial implementation completed. I plan to add more tests and check whether features in rustc are reported as unused correctly or not. |
This comment has been minimized.
This comment has been minimized.
cd83e12 to
2945856
Compare
This comment has been minimized.
This comment has been minimized.
2945856 to
36c0a20
Compare
This comment has been minimized.
This comment has been minimized.
36c0a20 to
2ddaf82
Compare
This comment has been minimized.
This comment has been minimized.
2ddaf82 to
fb08c95
Compare
This comment has been minimized.
This comment has been minimized.
fb08c95 to
38aefe4
Compare
This comment has been minimized.
This comment has been minimized.
38aefe4 to
0cda8d4
Compare
This comment has been minimized.
This comment has been minimized.
0cda8d4 to
2d2577f
Compare
This comment has been minimized.
This comment has been minimized.
2d2577f to
b67632e
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
a940d65 to
435090a
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (c5f63cc): comparison URL. Overall result: ❌✅ regressions and improvements - please read the text belowBenchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf. Next Steps: If you can justify the regressions found in this try perf run, please do so in sufficient writing along with @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 0.1%, secondary 1.6%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 1.6%, secondary -0.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 481.762s -> 483.482s (0.36%) |
|
Perf is a lot better now but it's still quite a regression, I wonder what we can do to fix the last bit of perf loss |
|
Maybe we could skip this new code when unstable features are not allowed at all (not nightly and no RUSTC_BOOTSTRAP)? |
b015168 to
bc3edee
Compare
| pub mir_opt_bisect_eval_count: AtomicUsize, | ||
|
|
||
| pub used_features: Lock<Option<Arc<WorkerLocal<RefCell<FxHashMap<Symbol, Option<u32>>>>>>>, | ||
| used_features_weak: Weak<WorkerLocal<RefCell<FxHashMap<Symbol, Option<u32>>>>>, |
There was a problem hiding this comment.
That's what I have in mind. So we avoid encoding several DepNodes for each feature. Even with that we already have up to 3% increase in dep-graph size!
bc3edee to
2d2add7
Compare
I think it might be related to the overhead caused by query side effects and recording used features themselves. After all, we added an extra table and still need to traverse all enabled features during the final reporting phase. Anyway, I think we could do another perf run first because the new impl is simper than before. |
This comment has been minimized.
This comment has been minimized.
2d2add7 to
a283871
Compare
|
@JonathanBrouwer Please help do the perf run again, thanks! |
|
@bors try @rust-timer queue |
|
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
|
⌛ Trying commit a283871 with merge eca2935… To cancel the try build, run the command Workflow: https://github.com/rust-lang/rust/actions/runs/22254092757 |
View all comments
Fixes #44232
Fixes #151752
This PR records used features through query side effect, then reports unsued features finally.